package com.lab.vo;

import lombok.Data;
import java.time.LocalDateTime;

/**
 * 系统用户VO（视图对象）
 * 用于向前端返回用户核心信息，屏蔽敏感字段，适配用户列表展示、个人信息查看等场景
 */
@Data
public class UserVO {

    /**
     * 用户ID
     * 对应实体类id字段，用于前端标识单个用户（如编辑、删除用户操作）
     */
    private Integer id;

    /**
     * 用户名
     * 对应实体类username字段，展示用户登录账号（核心展示字段）
     */
    private String username;

    /**
     * 角色类型
     * 对应实体类roleType字段，展示用户角色（当前仅admin），用于前端权限控制或角色标识
     */
    private String roleType;

    /**
     * 学号
     * 对应实体类studentId字段，展示关联的11位学号（仅学生用户有值，管理员可为空）
     */
    private String studentId;

    /**
     * 账号创建时间
     * 对应实体类createTime字段，展示用户账号的注册时间，用于前端排序或账号信息追溯
     */
    private LocalDateTime createTime;
}